package com.xmy.erp.entity;

import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * <p>
 * 课程表
 * </p>
 *
 * @author hpiggy
 * @since 2023-09-09
 */
@ApiModel(value = "Course对象", description = "课程表")
public class Course implements Serializable {

    private static final long serialVersionUID = 1L;

    private Long id;

    @ApiModelProperty("课程名称")
    private String name;

    @ApiModelProperty("课程类别")
    private Long courseTypeId;

    @ApiModelProperty("科目")
    private Long subjectsId;

    @ApiModelProperty("年级")
    private Integer yearClassId;

    @ApiModelProperty("授课模式：班课，一对一（对于字典表）")
    private Integer teachingMode;

    @ApiModelProperty("开课校区类型:2指定校区，1全部校区")
    private Integer openingSchoolType;

    @ApiModelProperty("指定校区ids（废除）")
    private String schoolIds;

    @ApiModelProperty("收费模式，1按课时收费，2按时间收费，3按期收费（对应字典表）")
    private Integer chargeMode;

    @ApiModelProperty("备注")
    private String remark;

    @ApiModelProperty("课程状态，1开售，0未开售")
    private Integer status;

    @ApiModelProperty("级别，1市级，2县级，多个逗号隔开")
    private String levelStr;

    @ApiModelProperty("创建人id")
    private Long createdId;

    private Integer deleted;

    @ApiModelProperty("created_at")
    private LocalDateTime createdAt;

    @ApiModelProperty("updated_at")
    private LocalDateTime updatedAt;

    @ApiModelProperty("deleted_at")
    private LocalDateTime deletedAt;

    private Integer quarterNum;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
    public Long getCourseTypeId() {
        return courseTypeId;
    }

    public void setCourseTypeId(Long courseTypeId) {
        this.courseTypeId = courseTypeId;
    }
    public Long getSubjectsId() {
        return subjectsId;
    }

    public void setSubjectsId(Long subjectsId) {
        this.subjectsId = subjectsId;
    }
    public Integer getYearClassId() {
        return yearClassId;
    }

    public void setYearClassId(Integer yearClassId) {
        this.yearClassId = yearClassId;
    }
    public Integer getTeachingMode() {
        return teachingMode;
    }

    public void setTeachingMode(Integer teachingMode) {
        this.teachingMode = teachingMode;
    }
    public Integer getOpeningSchoolType() {
        return openingSchoolType;
    }

    public void setOpeningSchoolType(Integer openingSchoolType) {
        this.openingSchoolType = openingSchoolType;
    }
    public String getSchoolIds() {
        return schoolIds;
    }

    public void setSchoolIds(String schoolIds) {
        this.schoolIds = schoolIds;
    }
    public Integer getChargeMode() {
        return chargeMode;
    }

    public void setChargeMode(Integer chargeMode) {
        this.chargeMode = chargeMode;
    }
    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }
    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }
    public String getLevelStr() {
        return levelStr;
    }

    public void setLevelStr(String levelStr) {
        this.levelStr = levelStr;
    }
    public Long getCreatedId() {
        return createdId;
    }

    public void setCreatedId(Long createdId) {
        this.createdId = createdId;
    }
    public Integer getDeleted() {
        return deleted;
    }

    public void setDeleted(Integer deleted) {
        this.deleted = deleted;
    }
    public LocalDateTime getCreatedAt() {
        return createdAt;
    }

    public void setCreatedAt(LocalDateTime createdAt) {
        this.createdAt = createdAt;
    }
    public LocalDateTime getUpdatedAt() {
        return updatedAt;
    }

    public void setUpdatedAt(LocalDateTime updatedAt) {
        this.updatedAt = updatedAt;
    }
    public LocalDateTime getDeletedAt() {
        return deletedAt;
    }

    public void setDeletedAt(LocalDateTime deletedAt) {
        this.deletedAt = deletedAt;
    }
    public Integer getQuarterNum() {
        return quarterNum;
    }

    public void setQuarterNum(Integer quarterNum) {
        this.quarterNum = quarterNum;
    }

    @Override
    public String toString() {
        return "Course{" +
            "id=" + id +
            ", name=" + name +
            ", courseTypeId=" + courseTypeId +
            ", subjectsId=" + subjectsId +
            ", yearClassId=" + yearClassId +
            ", teachingMode=" + teachingMode +
            ", openingSchoolType=" + openingSchoolType +
            ", schoolIds=" + schoolIds +
            ", chargeMode=" + chargeMode +
            ", remark=" + remark +
            ", status=" + status +
            ", levelStr=" + levelStr +
            ", createdId=" + createdId +
            ", deleted=" + deleted +
            ", createdAt=" + createdAt +
            ", updatedAt=" + updatedAt +
            ", deletedAt=" + deletedAt +
            ", quarterNum=" + quarterNum +
        "}";
    }
}
